package string;

import java.util.Arrays;

/**
 * 字符串支持正则表达式方法二:
 * string[]spilt(string regex)
 * 将当前字符串按照满足正则表达式的部分进行拆分,返回的数组中包含被拆分出来的所有部分
 */
public class SplitDome {
    public static void main(String[] args) {
        String str ="abc123def456ghi";
        //按照数字部分进行拆分,得到所有的字母部分
        String[]data=str.split("[0-9]+");
        System.out.println(data.length);
        System.out.println(Arrays.toString(data));

        str="a,b,c,d,e,f";
        data=str.split(",");
        System.out.println(data.length);
        System.out.println(Arrays.toString(data));
        /*
        当连续遇到了两个可拆分项时,他们之间会拆分出一个空字符串
        字符串一上来就遇到了可拆分项时,那么会先拆分出一个空字符串
        如果是在字符串末尾连续出现可拆分项,那么拆分出来的空字符串都会被忽略.
         */
        str=",a,,b,c,d,e,f,,,,,,,";
        data=str.split(",");
        System.out.println(data.length);
        System.out.println(Arrays.toString(data));
        /*
        "."在正则表达式中表示任意字符,因此如果直接按照"."拆分,则得不到任何内容
         */

        str=",a.b.c.d.e.f";
        data=str.split("\\.");
        System.out.println(data.length);
        System.out.println(Arrays.toString(data));
    }
}
